package com.example.azheng.rxjavamvpdemo.mvp.contract;

import com.example.azheng.rxjavamvpdemo.base.BaseView;
import com.example.azheng.rxjavamvpdemo.bean.BaseObjectBean;

import io.reactivex.Flowable;


/**
 * @author azheng
 * @date 2018/6/4.
 * GitHub：https://github.com/RookieExaminer
 * Email：wei.azheng@foxmail.com
 * Description：
 */
public interface PlayRuleContract {

    interface Model {
        Flowable<BaseObjectBean<String>> playRule();
    }

    interface View extends BaseView {

        @Override
        void showLoading();

        @Override
        void hideLoading();

        @Override
        void onError(Throwable throwable);

        void playRuleSuccess(BaseObjectBean<String> bean);

    }

    interface Presenter {

        void playRule();

    }
}
